Monitoring device application usage for completion of checkout data processing

ABSTRACT

There are provided systems and methods for monitoring device application usage for completion of checkout data processing. A computing device may be utilized to perform one or more actions while utilising an application executable by the device, including a browser application or merchant application that allows a user to view an online marketplace and purchase items in a transaction. Prior to checkout and transaction processing, the device may be used to browse items, and items may be added to a shopping cart. However, the device may not finish electronic transaction processing for the items, for example, where the device does not enter transaction processing details and/or navigates away from the items or cart. A service provider may utilize past actions to determine whether the action indicates that the device is abandoning use of the application, including electronic transaction processing. If so, an incentive may be provided to continue use.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/856,870, filed Dec. 28, 2017, which is incorporated herein byreference in their entirety.

TECHNICAL FIELD

The present application generally relates to device application usageand actions taken in devices that indicate potential application usageand more specifically to monitoring and processing past device input andusage to identify when current application usage indicates abandonmentof application processing.

BACKGROUND

Device applications may be utilized by users to engage with onlineresources, including online merchant marketplaces and other electronicshopping forums that allow users to purchase items in an electronictransaction. During use of a device application, user input may be usedto navigate between interfaces, view data, and otherwise engage incomputing processes available to the application, device, and/or deviceoperating system. Some such actions may be utilized to shop for items onan online marketplace.

However, during use of the application, a user may not complete aprocess, for example, by abandoning the process so that the process isnot completed using the online resource. Such processes may includecheckout and electronic transaction processing for one or more items onthe online marketplace, such as completion of processing for a digitalshopping cart including the item(s). Thus, the merchant providing theitem on the online marketplace may fail to convert the potentialtransaction with the user to a purchased transaction and sale. However,without knowledge that the user may abandon use of the application, themerchant may not take steps to attempt to convert the transaction to acompleted transaction. Thus, the merchant is unable to provideactionable data to the device during application usage that may affectfuture processes taken in the application.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a networked system suitable forimplementing the processes described herein, according to an embodiment;

FIG. 2A is an exemplary user interface of a device when receiving userinput of an action taken during use of an application, according to anembodiment;

FIG. 2B is an exemplary user interface of a device displaying predictivedata output based on a previously occurring action taken during use ofan application, according to an embodiment;

FIG. 3 is an exemplary system environment where a communication deviceand a service provider may interact to process user input of deviceapplication usage and actions for predictive data output, according toan embodiment;

FIG. 4 is a flowchart of an exemplary process for monitoring deviceapplication usage for completion of checkout data processing, accordingto an embodiment; and

FIG. 5 is a block diagram of a computer system suitable for implementingone or more components in FIG. 1, according to an embodiment.

Embodiments of the present disclosure and their advantages are bestunderstood by referring to the detailed description that follows. Itshould be appreciated that like reference numerals are used to identifylike elements illustrated in one or more of the figures, whereinshowings therein are for purposes of illustrating embodiments of thepresent disclosure and not for purposes of limiting the same.

DETAILED DESCRIPTION

Provided are methods utilized for monitoring device application usagefor completion of checkout data processing. Systems suitable forpracticing methods of the present disclosure are also provided.

One or more entities, such as personal users or consumers, groups ofusers, merchants, businesses, or other commercial agencies, may utilizedevice applications and/or online resources that may be interacted withthrough a device to perform one or more computing processes. Forexample, an application may allow a user to request and receive data,view the data, interact with the data, and/or transmit the data or otherdata between disparate devices over a network connection. In certainembodiments, the application may correspond to a browser application ordedicated device application that may be used to access an onlinemerchant marketplace and shop for one or more items. Thus, the computingprocesses may correspond to processes to browse and view data from theonline marketplace, as well as process electronic transactions for itemsavailable on the online marketplace. However, other applications mayalso utilize the processes described herein to provide an incentive orpredictive data output that encourages or incentivizes a user tocomplete a process using the application and/or the online resource.

These computing processes may therefore include electronic transactionprocessing services for electronic transactions, including onlinetransactions to purchase one or more items from or on an online merchantmarketplace. Various service providers may provide these transactionprocessing services that may allow these two or more entities to engagein electronic transaction processing, including processing of a digitalshopping cart created by an entity on the online merchant marketplaceand having the item(s) selected by the entity or consumer for purchase.

For example, a payment provider or transaction processor service mayoffer online electronic transaction processing services that providetransfers, payment services, and other type of financial servicesincluding payment account establishment and/or management. These serviceproviders may further provide additional types of benefits, features,and/or processes to users, such as fraud protection and incentives forcompleting electronic transactions and purchasing items on the onlinemarketplace, as discussed herein. These electronic transactionprocessing services may be accessed through an application on thecomputing device, and may be included within another application orwebsite of another entity (e.g., an online merchant or marketplace)using the services and processes of the service provider.

When utilising the application, the user device may perform specificcomputing processes. The use of the application may therefore correspondto an application use session that utilizes the application's processes.In various embodiments, the use of one or more of the application'sprocesses may cause the application to interact with another device,server, or entity (e.g., cloud computing server(s)), where theapplication requests communication with the separate entity for datatransmission, retrieval, and/or processing with the disparate entity.The use of the application may be linked to one or more processes withthe networked or online entity/resource, and the use/process(es) may beidentified by the requested usage and processes of the application bythe computing device. The application and/or a service provider maytrack application usage and processes engaged in and/or executed by theapplication, which may be utilized as discussed herein to determinecurrent use and/or executing/executed processes of the application, aswell as past processes executed by the application and past usage of theapplication with their corresponding user input to perform such pastapplication processing.

As discussed above, the use of the application may correspond to ashopping session that indicates an interest in one or more items, forexample, by adding the item(s) to a digital shopping cart for a processto purchase the item(s) from an online merchant and/or marketplace andperform electronic transaction processing for the item(s). A user usingan application of the computing device may generate the digital shoppingcart during a use session of the application's processes. The onlinemerchant, marketplace, and/or service provider may allow for generationof the digital shopping cart through browser or dedicated applicationusage and processes, for example, the processes to browse items, selectitems for purchase, and move the items to a digital shopping cart orother checkout process. The digital shopping cart may be created by auser through user input, and may be generated through use of an accountor other identifier for the user, device, and/or application. Theapplication may be used to access one or more interfaces and processesof the online merchant or marketplace to enter user input, allow forbrowsing, and generate the digital shopping cart. For example, agraphical user interface of a device used to access the application,retrieve and display data for the online merchant or marketplace (e.g.,through in a website or a dedicated application), transmit data used togenerate the digital shopping cart, and allow the user to utilize theapplication for processing of the digital shopping cart, includingaccessing an account to checkout and complete an electronic transactionfor the digital shopping cart as well as view additional information.

During the session of application use that generates the digitalshopping cart, user input to the device may request one or more actionsto be taken by the device when utilising the application. Thus, the usermay provide input during the use of the application and/or onlineresource/service, which may correspond to a requested action taken bythe device with the application/service. For example, user input may beused to request execution of a process of the device/application, whichcauses the device to execute some software task or routine thataccomplishes a particular function of the application, service, and/oroperating system. These actions may occur after certain applicationprocessing, such as after beginning use of the application, executingapplication processes, and communicating data with an online merchant,marketplace, or other entity/resource. For example, after a userutilizes a device to open and execute an application, and begins usingthe application, the actions may result from further user input thatrequests the device perform some operation or task. With regard to tasksor operations performed during a shopping use session with an onlinemerchant or marketplace, the actions may result from user inputassociated with browsing the marketplace and generating the digitalshopping cart.

The actions may indicate that the user wishes to abandon processing thedigital shopping cart and will not purchase the items during the currentsession or use of the application. The actions may correspond to userinput that indicates whether the device is requested to continue the useor process of the application, or whether the device is requested toperform a different process and may abandon the current use or process.For example, the action may correspond to an operation to navigate toanother window or interface, such as utilising a mouse cursor orkeyboard shortcut to close a browser window, exit an application, ornavigate to another browser window, tab, or application interface. Theaction may correspond to navigations to other device processes orapplications, or may include navigation within the application.

Other types of actions include whether the user enters authenticationcredentials, browses another item, removes items from a shopping cart,returns to a home screen, locks a device or goes into a screensaver,sleep, or standby mode, etc. The merchant and/or service provider mayimplement a code package, snippet, or other software process that maydetect the action, and further may listen for data of the executingprocess so that the action that may provide user input to the executingprocess and/or cause abandonment of the executing process, as well asany data necessary for identifying the executing process and the currentstate of the process, may be acquired and determined. The code maycorrespond to a respective version, instance, or particular copy of thecode that may be implemented in each different merchant platform, suchas code for a specific website or application and/or versions orinstances of code for specific merchant requirements. Thus, the code maynot be the exact same code, either the same instance of the code or thesame copy of the code. For example, the code may correspond to adifferent instance that is implemented in each respective merchantplatform. The code may also be configured, re-coded, or written in adifferent coding language and/or with different process properties andfeatures to be implemented as required by the merchant platform.However, the code may provide the same or similar functionality in eachimplemented platform. Such data may be processed directly by the deviceand/or application, or may be transmitted to the merchant'sdevice/server and/or service provider's system for processing.

Utilizing machine learning for these actions, the service provider,application, and/or online merchant or resource (e.g., marketplace orother online service) may determine which actions indicate that theaction and/or corresponding user input indicates that the device willabandon the current process being executed in the application. Theservice provider (or other processing entity analyzing past actions anddevice usage) may therefore accrue historical application usage, whichmay include device application usage as well as usage of an associatedonline service or resource. The service provider (or other entity) mayprocess the historical application usage to identify abandonments ofpast processing by the application and/or with the online service.Abandonment of a use/process may correspond to a failure to completeprocessing of the use/process of the application/online service.

For example, the abandonment may correspond to a use or process of anapplication/online service that failed to reach an end processing state,such as a completion of an electronic transaction for one or more itemsin a digital shopping cart generated using an application and with anonline service. The historical application and/or device usage mayinclude processes that are not completed before the process isabandoned, another process begins execution, and/or the device quitsfrom the application and/or processing with the online service. In thisregard, it is noted that analysis of past historical actions, tasks,and/or operations taken by a device when utilising an application and/oronline resource (e.g., the merchant for electronic shopping) may bediscussed herein as being performed by the service provider, but mayalso be performed by another entity. For example, the service providermay provide a software framework, software development kit (SDK), codesnippet or package, or other available process for a merchant or otherentity to incorporate the processes described herein to their ownwebsite, application, and/or processes. Thus, each merchant platform mayutilize the SDK or other implementable code to provide a respectiveversion or instance of the code snippet in each platform to execute theprocesses described herein.

These abandoned uses/processes of the application/online resource mayfurther be associated with one or more actions, such as requested tasksor operations, that occur prior to or at the point of abandonment. Forexample, an action may request that the device move to another interfaceor application from a first application, after which the firstapplication does not complete the pending use/process. The action maycorrespond to a particularly requested task, such as quitting out of theapplication, minimizing the application, opening a new tab or interfacewindow of the application, or otherwise performing some task oroperation using the device that end a use or process of anapplication/online service prior to completion of the use/process (e.g.,before reaching an end state, such as completion of a transaction, whichmay be application, use, and/or online service specific and set by theservice provider or online merchant). With a pending shopping use andgenerated shopping cart having one or more items pending for purchaseand electronic transaction processing, the action may correspond to someaction that does not complete the electronic transaction for items inthe digital shopping cart and therefore does not purchase the items,resulting in a lost sale for the online merchant.

The past or historical usage information for the application and/oronline service usage may be accrued over a range of users, or may beuser specific. For example, the service provider may determine abandonedprocesses, and the actions occurring prior to abandonment that cause theabandonment (e.g., are used to abandon or quit from completing theprocess) for multiple users to determine which actions are associatedwith abandonment for multiple users. However, in other embodiments, thehistorical usage information for abandonment of processes may be user oraccount specific, device specific, and/or application specific, so thatthe actions that indicate and are associated with abandonment of ause/process for an application and/or online service are more specificto a certain user, account, device, and/or application.

For example, Alice may select an X icon or click a home screen button toexit from an application after placing items in a digital shopping cartduring multiple past abandonments that did not lead to a sale of thoseitems and completing electronic transaction processing for the shoppingcart. Thus, when Alice begins to navigate to the X icon, clicks on the Xicon, or presses the home screen button, these actions may indicate thatAlice will not purchase the items in a present shopping cart and insteadabandon the shopping cart. Conversely, Brian may navigate to another tabor window of a browser application when Brian has previously abandonedprocessing of digital shopping carts, which may be used to determinethat this action indicates Brian will likely abandon a current digitalshopping cart in an application interface or window.

Once historical device usage is processed to determine what past actionsare associated with abandonment of certain application/online serviceuses and processes, these past actions may be determined to beindicators of abandonment of the associated use/processes. The serviceprovider (or application/online merchant) may utilize data of currentactions taken during an application or online service use, and processthe data utilising the past or historical application usage data todetermine whether any of the actions executed during the current use ofthe application/online service indicates that the device or user mayabandon the present use and executing processes. The data may correspondto application and/or online service processes being utilized andexecuted by the device, as well as user input to the device during theapplication/online service use.

For example, the data may correspond to data monitored and received bythe service provider during the device's use of the application, whichmay include use of an online service to send, receive, and process data,such as an online merchant or marketplace where the device is being usedto browse items for sale and/or add items to a digital shopping cart.While performing these processes, the service provider may monitor foractions that indicate that the device may abandon the process based onprevious actions taken that resulted in abandonment (e.g., did not endto a completion state desired by the service provider or online serviceor merchant). As discussed herein, those actions may be actionsdetermined generally from a population of multiple users when using theapplication and/or online service, or may be specific to the user,account, device, and/or application. If detected, the service providermay then execute a process in response to the action or event detectedduring the application/online service provider use.

In various embodiments, when determining whether an action may be usedto determine that the device is or will likely abandon a use sessionand/or process of an application/online service, the service providermay utilize the action itself and the user input generating the action,and compare the action to past actions that occurred prior to or at thetime of abandonment and cause the abandonment (e.g., the action thatresulted in the abandonment of the process or use, such as quitting froman application, closing, locking, or shutting down a device, or movingto another process, application, or user interface). If the action isthe same or similar to the previous action, then the current action mayindicate that the device is abandoning or likely to abandon the process.The action may include the same or similar user inputs, or request thatthe same or similar executable task or operation be performed. Incertain embodiments, the service provider may provide specificalgorithmic weights to various actions and user inputs to determinewhether those actions are similar to previous actions, for example, byweighting user inputs differently and/or by weighting user or accountspecific historical application usage data as more relevant than generalpopulation historical application usage data.

Thus, if the action that indicates potential or actual abandonment of anapplication/online service use is detected during a current use sessionand/or execution of a process, the service provider may utilize theaction to determine output data for the device that may incentivize auser using the device to complete the process and use of theapplication/online service instead of abandoning the current processing.The output data determined by the service provider may correspond to anincentive, benefit, discount, reward, or loyalty program for one or moreof the merchant, the online marketplace, and/or the specific applicationor application process (e.g., for the items in the digital shoppingcart). The incentive may be provided and redeemable only if the usercompletes the process, for example, by finishing the process instead ofabandoning the process. The incentive may therefore motivate the user toconvert the process from an abandoned (or potentially abandoned process)to a completed process. In this regard, the incentive may only beredeemed and provided when the device engages in the process again,access the abandoned and incomplete process, and finishes the process toan end state for the process, such as completing electronic transactionprocessing for the process. The incentive may therefore be specific tothe process, including the data in the process (e.g., the items in thecart).

The incentive or other output data may also be specific to the device,user, and/or account that abandoned the process, such as an incentivethat is specifically tailored to convert the user to finishing theprocess and purchasing the items. For example, it may be determined frompast completed processes that the user would prefer a percentagediscount over an amount to be applied to a future purchase. Thus, theincentive may be specific to the particular user, account, or devicebased on a past history of completed and abandoned processes, and whichincentives caused completion of the processes. In other embodiments,different data may also be output that may incentivize or remind theuser to complete the process and not abandon, such as a notification ofpotential abandonment, an alert of the remaining time and/or length ofthe process, a notification about possible penalties, missed prices orincentives, or other detrimental effect that may occur as a result ofabandonment, or other information.

The data for the incentive may then be generated by the service providerand communicated to the user device for output to the user. Whengenerating the data for output by the device abandoning the process, theservice provider may further store data of the abandoned process, suchas currently processed data at the time of abandonment. Where theprocess corresponds to an electronic shopping process having anabandoned digital shopping cart with one or more items, the serviceprovider may store data for the digital shopping cart having the itemsor may generate input expressions necessary to cause the digitalshopping cart to be recreated or recalled from the online merchantand/or marketplace. The output data may further include a process forautomatic redemption of the incentive in the output data, which may beapplied to the digital shopping cart when the device utilizes the outputdata of the incentive to re-engage in the abandoned process using theapplication/online service. The output data may include a selectablelink, interface button or field, or other executable process to redeemthe incentive, as well as access, recall, or re-enter (e.g., resubmitthe input causing creation of the shopping cart) to the merchant ormarketplace to cause the digital shopping cart to be shown with theapplied incentive. Thus, on display of the output data, user input maybe provided to request that the output data re-enter or complete theabandoned process, which may be performed through the output data.

If the device requests further processing with the application/onlineservice, including completion of the process such as electronictransaction processing for a digital shopping cart, the application mayprovide input requesting processing of the process as well as applyingthe incentive. In order to process an electronic transaction for adigital shopping cart, the user may be required to have an account withthe service provider or other online transaction processor in order toengage in electronic transaction processing with the online merchant ormarketplace. The user may be required to provide identificationinformation to establish the account, such as personal information for auser, business or merchant information for such an entity, or othertypes of identification information including a name, address, and/orother information. The user may also be required to provide financialinformation, including payment card (e.g., credit/debit card)information, bank account information, gift card information, and/orbenefits/incentives, which may be used to provide payment. In order tocreate an account, the user may be required to select an account nameand/or provide authentication credentials, such as a password, personalidentification number (PIN), answers to security questions, and/or otherauthentication information.

Once an account is created, the account may be accessed through a webbrowser from a website of the service provider and/or a dedicatedapplication of the service provider, such as a mobile smart phoneapplication. A token may be issued to the device of the user for theirrespective account, where the token may include data (which may beencrypted) allowing the service provider to identify the user and theiraccount and authenticate the user. Thus, the token may be transmitted toother entities during transaction processing, which may allow theservice provider to identify and authenticate the user's account andengage in transaction processing. Additionally, the online paymentprovider or other service provider may provide digital wallet services,which may offer financial services to send, store, and receive money,process financial instruments, and/or provide transaction histories. Acomputing device may execute a transaction processing application, whichmay be configured to send and receive payments to another party, such asanother user and/or a merchant, or otherwise engage in transactionprocessing. In various embodiments, a website may provide thetransaction processing services, and thus may be accessed by a webbrowser application. The application (or website) may be associated withthe service provider, such as PayPal® or other online payment providerservice, which may provide payments and the other aforementionedtransaction processing services on behalf of users, merchants, and otherentities.

The service provider may provide processes to store and generate datafor incomplete and abandoned application and/or online service uses andprocesses so that the service provider may recall a use and/or processfor completion by a device executing the application and/or utilisingthe online service provider. The service provider may further generatedata for the abandoned process that may cause completion of the process,including incentives and other information that may cause a device tocomplete the process instead of abandoning the process. In embodimentswhere the process corresponds to an abandoned digital shopping cart withan online merchant or marketplace, the incentive may correspond to datanecessary to resume or recall the digital shopping cart as well as applyan incentive to the digital shopping cart. In this manner, the serviceprovider may complete initiated processing of data, and may reduceabandonment of application and online service use and processing.

FIG. 1 is a block diagram of a networked system 100 suitable forimplementing the processes described herein, according to an embodiment.As shown, system 100 may comprise or implement a plurality of devices,servers, and/or software components that operate to perform variousmethodologies in accordance with the described embodiments. Exemplarydevices and servers may include device, stand-alone, andenterprise-class servers, operating an OS such as a MICROSOFT® OS, aUNIX® OS, a LINUX® OS, or other suitable device and/or server based OS.It can be appreciated that the devices and/or servers illustrated inFIG. 1 may be deployed in other ways and that the operations performedand/or the services provided by such devices and/or servers may becombined or separated for a given embodiment and may be performed by agreater number or fewer number of devices and/or servers. One or moredevices and/or servers may be operated and/or maintained by the same ordifferent entities.

System 100 includes a communication device 110 a, a communication device110 b a merchant device 120, and a transaction processor server 130 incommunication over a network 150. Communication device 110 a may beutilized to access the various features available for communicationdevice 110 a, which may include processes and/or applications associatedmerchant device 120 and/or transaction processor server 130 to engage inan application process that may utilize merchant device 120 and/ortransaction processor server 130. Prior to completion of the process,such as arriving at an end state, communication device 110 a may abandonthe process so that the process is not completed. This may correspond toabandoning a digital shopping cart generated using one or more ofmerchant device 120 and/or transaction processor server 130. This may bedetected through previous actions that abandon previous processes oncommunication device 110 a, or on another communication device 110 bseparate from communication device 110 a but used by a user associatedwith communication device 110 a, for example, a user using an accountwith transaction processor server 130 to previous generate digitalshopping carts and abandon those carts. In order to complete theprocess, transaction processor server 130 may store the data of theincomplete and/or abandoned application process that utilizes merchantdevice 120 and/or transaction processor server 130. Transactionprocessor server 130 may utilize the data of the abandoned process todetermine output data for communication device 110 a that incentivizes auser to complete the process. Transaction processor server 130 mayoutput the data through communication device 110 a, and may recall theabandoned process for completion based on a request from communicationdevice 110 a.

Communication device 110 a, communication device 110 b, merchant device120, and transaction processor server 130 may each include one or moreprocessors, memories, and other appropriate components for executinginstructions such as program code and/or data stored on one or morecomputer readable mediums to implement the various applications, data,and steps described herein. For example, such instructions may be storedin one or more computer readable media such as memories or data storagedevices internal and/or external to various components of system 100,and/or accessible over network 150.

Communication device 110 a may be implemented as a communication devicethat may utilize appropriate hardware and software configured for wiredand/or wireless communication with merchant device 120 and/ortransaction processor server 130. For example, in one embodiment,communication device 110 a may be implemented as a personal computer(PC), telephonic device, a smart phone, laptop/tablet computer,wristwatch with appropriate computer hardware resources, eyeglasses withappropriate computer hardware (e.g. GOOGLE GLASS®), other type ofwearable computing device, implantable communication devices, and/orother types of computing devices capable of transmitting and/orreceiving data, such as an IPAD® from APPLE®. Although only onecommunication device is shown, a plurality of communication devices mayfunction similarly.

Communication device 110 a of FIG. 1 contains a device application 112,other applications 114, a database 116, and a communication module 118.Device application 112 and other applications 114 may correspond toexecutable processes, procedures, and/or applications with associatedhardware. In other embodiments, communication device 110 a may includeadditional or different modules having specialized hardware and/orsoftware as required.

Device application 112 may correspond to one or more processes toexecute software modules and associated devices of communication device110 a to initiate, engage in, abandon, and/or complete one or moreprocesses with merchant device 120 and/or transaction processor server130 including processing of electronic transactions over a network forone or more items. In this regard, device application 112 may correspondto specialized hardware and/or software utilized by a user ofcommunication device 110 a to request access or executing of one or moreapplication processes, which may utilize merchant device 120 and/ortransaction processor server 130. During execution of the process,device application 112 may abandon the process, for example, by quittingfrom the process or not providing further user input that completes theprocess. Device application 112 may be closed or quit from execution,and therefore abandon a process that was executing at the time ofclosure of device application 112.

Thus, during a use of device application 112 and execution of a processof device application 112, device application 112 may receive user inputand/or other processing input or requests that cause device application112 to perform an operation or task. During the use or process of deviceapplication 112 one or more events or actions may be captured that maycorrespond to a requested task or operation of device application 112.Where the application process corresponds to a shopping, purchase, andelectronic transaction processing process, device application 112 may beutilized to view one or more items for sale, select items of interestfor purchase, add those items to a digital shopping cart, and completeelectronic transaction processing for the digital shopping cart throughproviding an account or other payment instrument used to provide paymentfor the digital shopping cart. Device application 112 may be used totherefore access or more websites or data for application interfaces ofmerchant device 120, display item data and shopping information, andallow a user to generate and/or process an electronic transaction forone or more items. This may require user input and entry and executionof process actions, tasks, or operations, which may be input using oneor more input devices of communication device 110 a and may correspondto recordable actions.

The action may correspond to the aforementioned user input, and maycorrespond to a request to continue the use or process currentlyexecuting and complete the process (e.g., by providing further inputand/or allowing the process to finish), or quit and abandon the processso that the process is not completed. For example, actions that may beused to abandon a process may correspond to navigating to another userinterface, tab, or application, closing of the application through acommand or input (e.g., moving a mouse to an interface field or optionto close device application 112), entry of a hotkey or shortcut to moveto another interface or application or close device application 112,remove items from a digital shopping cart, navigating to anotherwebsite, or otherwise providing input that is associated with anabandoned process. The use or process of device application 112 may beprovided to transaction processor server 130 for processing anddetermination of historical application usage of device application 112and/or incentive data for an incentive to complete a process, asdiscussed herein. Where an incentive is determined by transactionprocessor server 130, the incentive may also be output through deviceapplication 112.

Device application 112 may utilize one or more user interfaces, such asgraphical user interfaces presented using an output display device ofcommunication device 110 a, to enable the user associated withcommunication device 110 a to access and execute on or more processes,including accessing online merchant or marketplace data, generate adigital shopping cart for one or more items, and complete a transactionto purchase the items in the digital shopping cart (or abandonprocessing of the digital shopping cart through one or more actionstaken during use of device application 112). In various embodiments,device application 112 may correspond to a general browser applicationconfigured to retrieve, present, and communicate information over theInternet (e.g., utilize resources on the World Wide Web) or a privatenetwork.

For example, device application 112 may provide a web browser, which maysend and receive information over network 150, including retrievingwebsite information (e.g., a website for transaction processor server130), presenting the website information to the user, and/orcommunicating information to the website, including payment informationfor transaction processed through transaction processor server 130.However, in other embodiments, device application 112 may include adedicated application of transaction processor server 130 or otherentity (e.g., a merchant), which may be configured to assist inprocessing transactions electronically, including transactions fordigital shopping cart processing. The interface(s) providing by deviceapplication 112 may be utilized to engage in electronic transactionprocessing, including online purchases for electronic transactionprocessing processes.

Device application 112 may further be used to process an electronictransaction, such as processing a digital shopping cart generated withmerchant device may be used to access a website or an interface of amerchant or service provider that allows communication device 110 a toselect items for purchase and engage in electronic transactionprocessing for a digital shopping cart. During processing of theshopping cart, including resuming processing of the shopping cart afterpreviously abandoning processing, device application 112 may be utilizedto select payment instrument(s) for use in providing payment for apurchase transaction, transfer, or other financial process. As discussedherein, device application 112 may utilize user financial information,such as a credit card, bank account, or other financial account, as apayment instrument when providing payment information. Additionally,device application 112 may utilize a digital wallet stored with anaccount with a payment provider, such as transaction processor server130, as the payment instrument, for example, through accessing a digitalwallet or account of a user with transaction processor server 130through entry of authentication credentials and/or by providing a datatoken that allows for processing using the account.

Device application 112 may utilize a digital token for the paymentaccount, digital wallet, and/or payment instruments by providing thedigital token to authenticate the user and/or use the user's paymentaccount, digital wallet, and/or payment instruments, which may beencrypted and/or provided through a secure channel, to a transactionparticipant to authenticate the account, digital wallet, and/or paymentinstruments to transaction processor server 130 and allow fortransaction processing and payment using the account, digital wallet,and/or payment instruments. Selection of a payment instrument may occurprior to, at, or after establishment of the shopping cart processing.Device application 112 may also be used to apply an incentive to thepurchase, including one generated by transaction processor server 130after abandoning initial processing of the shopping cart. Deviceapplication 112 may be utilized to view the results of payment, forexample, using transaction histories, dispute resolution processes, andother post-transaction process.

In various embodiments, device application 112 may be utilized to createan account used to process the digital shopping cart and/or engage inother transaction processing. In this regard, device application 112 maybe used to enter one or more payment instruments or other fundingsources for storage in a digital wallet associated with a paymentaccount (e.g., stored and/or serviced by transaction processor server130), access the digital wallet and/or payment account for use, andengage in transaction processing with another entity. Device application112 may provide an interface to permit the user to enter input and otherdata for payment instruments, for example, through an input device(e.g., touch screen with a graphical user interface, keypad/keyboard,mouse, etc.) and/or through a data capture device (e.g., scanner,camera, other optical device, etc.). Such information may be stored withtransaction processor server 130 for use with an online digital walletand/or account for the user, which may be utilized for transactionprocessing with another entity, such as a merchant associated withmerchant device 120.

In various embodiments, information for the account may also be storedin communication device 110 a for use in an offline environment. Theaccount accessible through device application 112 may be used toinitiate, receive, and/or process/complete transactions using servicesprovided by transaction processor server 130. Once entered, the paymentinstruments may be communicated to transaction processor server 130 overnetwork 150 by device application 112 for establishment and/ormaintenance/update of the account and/or entry into the digital walletfor the user. The user of communication device 110 a may also enterbenefits to device application 112, which may include incentives thatwere providing to finish processing an abandoned process of deviceapplication 112. The benefits may correspond to one or more of rewardsprograms, rewards programs membership level, rewards program points,available items in at least one rewards program, cash-back amounts forthe at least one rewards program, airline miles, promotional credit,promotional credit rates, promotional discount rate, merchant discounts,merchant discount rates, and merchant coupons. However, in otherembodiments, device application 112 may access and utilize a previouslyestablished account.

In various embodiments, communication device 110 a includes otherapplications 114 as may be desired in particular embodiments to providefeatures to communication device 110 a. For example, other applications114 may include security applications for implementing client-sidesecurity features, programmatic client applications for interfacing withappropriate application programming interfaces (APIs) over network 150,or other types of applications. Other applications 114 may also includeemail, texting, voice and IM applications that allow a user to send andreceive emails, calls, texts, and other notifications through network150. In various embodiments, other applications 114 may includefinancial applications, such as banking applications. Other applications114 may also include other location detection applications, which may beused to determine a location for the user, such as a mapping, compass,and/or GPS application, which can include a specialized GPS receiverthat obtains location information for communication device 110 a andprocesses the location information to determine a location ofcommunication device 110 a and the user. Other applications may includesocial networking applications, media viewing, and/or merchantapplications. Other applications 114 may include device interfaceapplications and other display modules that may receive input from theuser and/or output information to the user. For example, otherapplications 114 may contain software programs, executable by aprocessor, including a graphical user interface (GUI) configured toprovide an interface to the user. Other applications 114 may thereforeuse devices of communication device 110 a, such as display devicescapable of displaying information to users and other output devices,including speakers.

Communication device 110 a may further include database 116 stored in atransitory and/or non-transitory memory of communication device 110 a,which may store various applications and data and be utilized duringexecution of various modules of communication device 110 a. Database 116may include, for example, identifiers such as operating system registryentries, cookies associated with device application 112 and/or otherapplications 114, identifiers associated with hardware of communicationdevice 110 a, or other appropriate identifiers, such as identifiers usedfor payment/user/device authentication or identification, which may becommunicated as identifying communication device 110 a to transactionprocessor server 130. Database 116 may include data generated during useof device application 112 and execution of one or more processes,including data necessary to identify the process, a state of the processand entered input or data for the process, actions taken during theprocess, and/or data related to abandonment of the process. Moreover,received output data of an incentive used to reenter or complete anabandoned process, including one or more incentives, may be stored indatabase 116.

Communication device 110 a includes at least one communication module118 adapted to communicate with merchant device 120 and/or transactionprocessor server 130. In various embodiments, communication module 118may include a DSL (e.g., Digital Subscriber Line) modem, a PSTN (PublicSwitched Telephone Network) modem, an Ethernet device, a broadbanddevice, a satellite device and/or various other types of wired and/orwireless network communication devices including microwave, radiofrequency, infrared, Bluetooth, and near field communication devices.Communication module 118 may communicate directly with nearby devicesusing short range communications, such as Bluetooth Low Energy, LTEDirect, WiFi, radio frequency, infrared, Bluetooth, and near fieldcommunications.

Communication device 110 b may be implemented as a communication devicethat may utilize appropriate hardware and software configured for wiredand/or wireless communication with merchant device 120 and/ortransaction processor server 130, and may be used by the same userassociated with communication device 110 a to previous abandon one ormore processes, such as electronic transaction processing for a digitalshopping cart. For example, in one embodiment, communication device 110b may be implemented as a personal computer (PC), telephonic device, asmart phone, laptop/tablet computer, wristwatch with appropriatecomputer hardware resources, eyeglasses with appropriate computerhardware (e.g. GOOGLE GLASS®), other type of wearable computing device,implantable communication devices, and/or other types of computingdevices capable of transmitting and/or receiving data, such as an IPAD®from APPLE®. Although only one communication device is shown, aplurality of communication devices may function similarly.

Communication device 110 b may utilize an application to execute one ormore application processes, which may utilize merchant device 120 and/ortransaction processor server 130. Communication device 110 b may executeanother instance or copy of device application 112 from communicationdevice 110 a, or may utilize a different application that may similarlyhave an instance of executable code to detected abandonment actionswithin a process. Communication device 110 b may receive user inputand/or other processing input or requests that cause communicationdevice 100 b to perform an operation or task. Where the applicationprocess corresponds to a shopping, purchase, and electronic transactionprocessing process, communication device 110 b may be utilized to viewone or more items for sale, select items of interest for purchase, addthose items to a previous digital shopping cart, and complete electronictransaction processing for the previous digital shopping cart throughproviding an account or other payment instrument used to provide paymentfor the digital shopping cart. Communication device 110 b may abandonthe executing process, such as the previous digital shopping cart byquitting from the process or not providing further user input thatcompletes the process.

Thus, user input or another action may correspond to the user input thatcauses communication device 110 b to quit and abandon the process sothat the process is not completed. For example, previous actions takenwith a previously generated digital shopping cart may abandon the cartby navigating to another user interface, tab, or application, closing ofthe application through a command or input (e.g., moving a mouse to aninterface field or option to close the application), entry of a hotkeyor shortcut to move to another interface or application or close theapplication, remove items from a digital shopping cart, navigating toanother website, or otherwise providing input that is associated with anabandoned process. The use or process of communication device 110 b maybe provided to transaction processor server 130 for determination ofhistorical application usage of the user and/or account associated withcommunication device 110 a and communication device 110 b, which may beused to determine whether communication device 110 a is currentlyattempting or causing abandonment of another present process, such asabandonment of a currently pending digital shopping cart. The historicalusage information may then be stored with the account and used bytransaction processor server 130.

Merchant device 120 may be implemented as a communication device thatmay utilize appropriate hardware and software configured for wiredand/or wireless communication with communication device 110 a and/ortransaction processor server 130. For example, in one embodiment,merchant device 120 may be implemented as a personal computer (PC),telephonic device, a smart phone, laptop/tablet computer, wristwatchwith appropriate computer hardware resources, eyeglasses withappropriate computer hardware (e.g. GOOGLE GLASS®), other type ofwearable computing device, implantable communication devices, and/orother types of computing devices capable of transmitting and/orreceiving data, such as an IPAD® from APPLE®. Although only onecommunication device is shown, a plurality of communication devices mayfunction similarly.

Merchant device 120 of FIG. 1 contains an online merchant application122, other applications 124, a database 126, and a communication module128. Online merchant application 122 and other applications 124 maycorrespond to executable processes, procedures, and/or applications withassociated hardware. In other embodiments, merchant device 120 mayinclude additional or different modules having specialized hardwareand/or software as required.

Online merchant application 122 may correspond to one or more processesto execute modules and associated specialized hardware of merchantdevice 120 that provide online sales, checkout, and payment processesfor a transaction to purchase one or more items for sale from the user,such as a merchant or seller, corresponding to merchant device 120,including providing data for items available from a merchant on anonline marketplace or accessible through a website or dedicatedapplication. In this regard, online merchant application 122 maycorrespond to specialized hardware and/or software of merchant device120 to provide a convenient interface to permit a merchant to enter,view, and/or edit items and/or services for purchase by the userassociated with communication device 110 a. For example, online merchantapplication 122 may be implemented as an application having a userinterface enabling the merchant to enter item information and place oneor more items for sale through data accessible using device application112.

In certain embodiments, online merchant application 122 may correspondmore generally to a web browser application configured to view andprovide information available over the Internet or access a websitecorresponding to the merchant and/or an online marketplace utilized bythe merchant to provide item data for items for sale and post data fordevice application 112 to retrieve and utilize to process an electronictransaction for one or more items. Thus, the data provided by onlinemerchant application 122 may be utilized to generate a digital shoppingcart by device application 112, where the digital shopping cart may beprocessed and/or abandoned by actions taken using device application112. In this regard, transaction processor server 130 may utilize datafrom online merchant application 112 to store data for an abandoneddigital shopping cart, as well as generate an incentive for the digitalshopping cart.

Once a payment amount is determined for a transaction for items to bepurchased by the user associated with device application 112, onlinemerchant application 122 may request payment from the user fortransaction processing of a digital shopping cart including the items.Payment may be provided through a token for an account associated withcommunication device 110 a. The token may be communicated to merchantdevice 120, which may be used with the transaction and transactioninformation for processing. In other embodiments, other data may beprovided for transaction processing, including financial informationand/or authentication information necessary for use an account fortransaction processing. Transaction processor server 130 may process thetransaction with the provided token, which may include incentivesprovided by transaction processor server 130 for completing an abandoneddigital shopping cart. Online merchant application 122 may then receivethe results of the transaction processing, and complete the transactionwith the respective user, for example, by providing (e.g., shipping) theitems for the transaction or declining the transaction where the user isnot authenticated or the transaction is not authorized (e.g.,insufficient funds, rejection of the transaction based on riskanalysis). A transaction history may then be generated by onlinemerchant application 122.

Moreover, it is noted that online merchant application 122 may alsoperform one or more of the processes described herein of transactionprocessor server 130, for example, through implement code or othersoftware packages provided by transaction processor server 130 into oneor more applications, websites, or processes utilized or provided bymerchant device 120. In this regard, online merchant application 122 mayprovide one or more of the abandonment detection processes and/orincentive process to complete a digital shopping cart on detection ofabandonment that are discussed with reference to abandonment detectionapplication 140.

In various embodiments, merchant device 120 includes other applications124 as may be desired in particular embodiments to provide features tomerchant device 120. For example, other applications 124 may includesecurity applications for implementing client-side security features,programmatic client applications for interfacing with appropriateapplication programming interfaces (APIs) over network 150, or othertypes of applications. Other applications 124 may also include email,texting, voice and IM applications that allow a user to send and receiveemails, calls, texts, and other notifications through network 150. Invarious embodiments, other applications 124 may include financialapplications, such as banking applications. Other applications 124 mayalso include other location detection applications, which may be used todetermine a location for the user, such as a mapping, compass, and/orGPS application, which can include a specialized GPS receiver thatobtains location information for merchant device 120 and processes thelocation information to determine a location of merchant device 120 andthe user. Other applications may include social networking applications,media viewing, and/or merchant applications. Other applications 124 mayinclude device interface applications and other display modules that mayreceive input from the user and/or output information to the user. Forexample, other applications 124 may contain software programs,executable by a processor, including a graphical user interface (GUI)configured to provide an interface to the user. Other applications 124may therefore use devices of merchant device 120, such as displaydevices capable of displaying information to users and other outputdevices, including speakers.

Merchant device 120 may further include database 126 stored to atransitory and/or non-transitory memory of merchant device 120, whichmay store various applications and data and be utilized during executionof various modules of merchant device 120. Database 126 may include, forexample, identifiers such as operating system registry entries, cookiesassociated with online merchant application 122 and/or otherapplications 124, identifiers associated with hardware of merchantdevice 120, or other appropriate identifiers, such as identifiers usedfor payment/user/device authentication or identification. In variousembodiments, database 126 may information for items for sale, such asitem data necessary to generate a transaction to purchase one or more ofthe items and/or add the items to a digital shopping cart forprocessing. Database 126 may also store data for pending and/orabandoned digital shopping carts, and may include incentives availablefor processing pending and/or abandoned carts.

Merchant device 120 includes at least one communication module 128adapted to communicate with communication device 110 a and/ortransaction processor server 130. In various embodiments, communicationmodule 128 may include a DSL (e.g., Digital Subscriber Line) modem, aPSTN (Public Switched Telephone Network) modem, an Ethernet device, abroadband device, a satellite device and/or various other types of wiredand/or wireless network communication devices including microwave, radiofrequency, infrared, Bluetooth, and near field communication devices.Communication module 128 may communicate directly with nearby devices(e.g., merchant device 120) using short range communications, such asBluetooth Low Energy, LTE Direct, WiFi, radio frequency, infrared,Bluetooth, and near field communications.

Transaction processor server 130 may be maintained, for example, by anonline service provider, which may provide transaction processingservices on behalf of users and/or merchants including generation and/orprocessing of digital shopping carts. In this regard, transactionprocessor server 130 includes one or more processing applications whichmay be configured to interact with communication device 110 a, merchantdevice 120, and/or another device/server to facilitate transactionprocessing. In one example, transaction processor server 130 may beprovided by PAYPAL®, Inc. of San Jose, Calif., USA. However, in otherembodiments, transaction processor server 130 may be maintained by orinclude another type of service provider, which may provide connectionservices to a plurality of users.

Transaction processor server 130 of FIG. 1 includes an abandonmentdetection application 140, a transaction processing application 132,other applications 134, a database 136, and a network interfacecomponent 138. Abandonment detection application 140, transactionprocessing application 132, and other applications 134 may correspond toexecutable processes, procedures, and/or applications with associatedhardware. In other embodiments, transaction processor server 130 mayinclude additional or different modules having specialized hardwareand/or software as required.

Abandonment detection application 140 may correspond to one or moreprocesses to execute software modules and associated specializedhardware of transaction processor server 130 to analyze past historicalapplication usage and processes data with a currently executing processon communication device 110 a and an action taken during the currentlyexecuting process to determine whether the action indicates a likelyabandonment of the process, and further generate an incentive tocomplete the process if the action indicates abandonment. In thisregard, abandonment detection application 140 may correspond tospecialized hardware and/or software to receive information of past usesand executing processes by a device, for example, during use of deviceapplication 112 on communication device 110 a as well as other instancesand/or copies of device application 112 on other devices, such as asimilar copy of device application 112 executed by communication device110 b or communication device 110 b including another application thataccesses, executes, or otherwise utilizes a copy or instance of a codepackage, snippet, or process that provides detection of abandonmentactions.

The past uses may include which processes were complete and which wereabandoned during processing so that the process was not completed. Basedon those processes that were abandoned, actions taken that led to theabandonment (e.g., a task or operation to close an application orinterface window, leave a process, end a current operation, or otherinput that causes the process to quit or stop processing before acompletion state) may be determined and may be linked to potentialabandonment of the process. The actions may be general for a populationof users, or may be specific to particular users, devices, accounts, orapplication so that trends in behavior of the particular entity whenleading to an abandonment may be detected and determined. Where theprocess corresponds to online shopping and abandonment of a shoppingcart of items, the actions that cause or led to the shopping cart notbeing processed electronically using merchant device 120 and/ortransaction processor server 130 may be determined, such as closing awindow through a mouse action or keyboard input, locking or powering offcommunication device 110 a, navigating to another website orapplication, or other user input. This user input may therefore indicatethat the user providing the user input will likely abandon anothershopping cart when received during a further shopping cart generationand/or processing process.

After processing the historical data to determine which actions wereassociated, caused, or indicated abandonment of the process (which maybe general or device, user, account, and/or application specific),abandonment detection application 140 may execute during one or moreprocesses to detect whether actions, tasks, or operations performedbased on user or device requests/input during the process indicatesabandonment through comparison and analysis of the historicalapplication usage data. For example, communication device 110 a mayengage in another process, such as an online shopping session using dataand/or online resources provided by merchant device 120 over network150. Communication device 110 a may generate a digital shopping carthaving one or more items. After generation of the cart and prior tocheckout and electronic transaction processing to provide a payment forthe items in the cart, user input or another executable action may beprovided. The action may be the same or similar to past actions thatalso occurred at the time of abandonment or led to abandonment of theprocess, such as by quitting the process, application, or otherwisecause communication device 110 a to end the process.

In certain embodiments, a similarity score of the input or other actionmay be determined, which may be required to meet a threshold or setscore to determine that the action indicates abandonment or potentialabandonment of the process, such as abandonment of the shopping cart sothat the payment is never processed and the shopping cart is completed.If the action is not sufficient or the same/similar to past actions thatwould cause abandonment of the process, abandonment detectionapplication 140 may do nothing and may continue to monitor the processand processing and input provided by communication device 110 a.However, if the action indicates abandonment of the process, orpotential abandonment, then abandonment detection application 140 maydetermine that the process (e.g., the digital shopping cart for theshopping session) is or may be abandoned and an incentive or otherinformation may be provided to incentivize the user of communicationdevice 110 a to complete the process instead of quit or abandon theprocess.

If the action taken in the pending or currently executing processindicates that communication device 110 a will abandon the process andfail to complete the process, abandonment detection application 140 maygenerate output data for an incentive that incentivizes the user ofcommunication device 110 a to complete the process. For example, wherean action of closing a window or application having a shopping cart isdetected and based on past historical data, that action indicates thatthe user will not likely finish electronic transaction processing topurchase the items in the shopping cart, abandonment detectionapplication 140 may respond by generating output data for a benefit,reward, discount, or other incentive for the user to finish processingthe shopping cart, such as a monetary reward or discount to finishelectronic transaction processing of the digital shopping cart. Theoutput data may include a notification or alert that informs the userthat an abandonment action is detected and will result in abandoningand/or failing to finish the process (e.g., purchase the items andprocess a transaction for the shopping cart). The notification mayfurther include the incentive, and may provide one or more processes toreenter or continue the abandoned process, including retrieval ofprocess data for the abandoned process, as well as redeem the incentive.The output data may be communicated to communication device 110 a andmay be displayed to the user, as discussed herein.

One or more of the processes discussed herein of abandonment detectionapplication 140 may be provided in merchant device 120, for example, byonline merchant application 122 to provide the described processes forprocess abandonment detection and incentive generation to resume andcomplete an abandoned process. Abandonment detection application 140 mayprovide a software package, code snippet, implementable process, and/orsoftware development kit to implement the processes described herein forabandonment detection application in a website and/or applicationprovided by merchant device 120.

Transaction processing application 132 may correspond to one or moreprocesses to execute software modules and associated specializedhardware of transaction processor server 130 to provide payment andtransaction processing services to merchants and users, for examplethough an account and/or payment instruments of the user to an accountof the merchant, where the service may include services associated withcompleting a process for electronic transaction process, which maycomplete an abandoned shopping session and digital shopping cart. Inthis regard, transaction processing application 132 may correspond tospecialized hardware and/or software to provide transaction processingand payment services through accounts, including digital wallets storingpayment instruments. The services may allow for a payment through apayment instrument, including a credit/debit card, banking account,payment account with transaction processor server 130, and/or otherfunding instrument. The payment may be used to provide a payment for adigital shopping cart. In order to establish an account to send andreceive payments, transaction processing application 132 may receiveinformation requesting establishment of the account. The information mayinclude user personal, business, and/or financial information.

Additionally, the information may include a login, account name,password, PIN, or other account creation information. The entityestablishing the account may provide a name, address, social securitynumber, or other personal or business information necessary to establishthe account and/or effectuate payments through the account. Transactionprocessing application 132 may further allow the entity to service andmaintain the payment account, for example, by adding and removingfunding instruments. Transaction processing application 132 may be usedto provide a payment for a digital shopping cart, including payment fora previously abandoned or potentially abandoned cart that may becompleted with a provided incentive to process the shopping cart.Transaction processing application 132 may process the payment for thedigital shopping cart, and may process the payment with a providedincentive, such as a discount, reward, or other benefit. Transactionprocessing application 132 may debit an account of the user and providethe payment to an account of the merchant. Transaction processingapplication 132 may also be used to provide transaction histories forprocessed transactions.

In various embodiments, transaction processor server 130 includes otherapplications 134 as may be desired in particular embodiments to providefeatures to transaction processor server 130. For example, otherapplications 134 may include security applications for implementingserver-side security features, programmatic client applications forinterfacing with appropriate application programming interfaces (APIs)over network 150, or other types of applications. Other applications 134may contain software programs, executable by a processor, including agraphical user interface (GUI), configured to provide an interface tothe user when accessing transaction processor server 130, where the useror other users may interact with the GUI to more easily view andcommunicate information. In various embodiments, other applications 134may include connection and/or communication applications, which may beutilized to communicate information to over network 150.

Additionally, transaction processor server 130 includes database 136. Aspreviously discussed, the user and/or the merchant may establish one ormore digital wallets and/or accounts with transaction processor server130. Digital wallets and/or accounts in database 136 may include userinformation, such as name, address, birthdate, paymentinstruments/funding sources, additional user financial information, userpreferences, and/or other desired user data. Users may link to theirrespective digital wallets and/or payment accounts through an account,user, merchant, and/or device identifier. Thus, when an identifier istransmitted to transaction processor server 130, e.g., fromcommunication device 110 a, one or more digital wallets and/or paymentaccounts belonging to the users may be found. Database 136 may alsostore historical application usage data of abandoned and/or completedprocesses, and actions that led to abandonment and/or completion.Additionally, currently executing and/or recently abandoned process datamay be stored in database 136 with an incentive provided to complete theprocess.

In various embodiments, transaction processor server 130 includes atleast one network interface component 138 adapted to communicatecommunication device 110 a and/or merchant device 120 over network 150.In various embodiments, network interface component 138 may comprise aDSL (e.g., Digital Subscriber Line) modem, a PSTN (Public SwitchedTelephone Network) modem, an Ethernet device, a broadband device, asatellite device and/or various other types of wired and/or wirelessnetwork communication devices including microwave, radio frequency (RF),and infrared (IR) communication devices.

Network 150 may be implemented as a single network or a combination ofmultiple networks. For example, in various embodiments, network 150 mayinclude the Internet or one or more intranets, landline networks,wireless networks, and/or other appropriate types of networks. Thus,network 150 may correspond to small scale communication networks, suchas a private or local area network, or a larger scale network, such as awide area network or the Internet, accessible by the various componentsof system 100.

FIG. 2A is an exemplary user interface of a device when receiving userinput of an action taken during use of an application, according to anembodiment. Environment 200 a includes an application interface 1000output by communication device 110 a having the described features,processes, and components discussed in reference to system 100 ofFIG. 1. In this regard, a user viewing application interface 1000 inenvironment 200 a may view displayed data from processes executed by oneor more of the applications discussed in reference to communicationdevice 110 a.

Application interface 1000 of communication device 110 a may displaydata during an executing process of an application, such as applicationoutput data that may be displayed during a session of use of theapplication. For example, application interface 1000 may display anavigation window of a browser application, which may display anaccessed website for a merchant A marketplace 1002. Applicationinterface 1000 may further display a search field 1004 used to browseand/or find items for sale during an online shopping session withmerchant A marketplace 1002. For example, search field 1004 may be usedto add items to a pending cart 1006, which may correspond to a digitalshopping cart used to “hold” items for purchase as well as performelectronic transaction processing to purchase those items.

Pending cart 1006 is shown having an item A 1008 and an item B 1010.During use of merchant A marketplace 1002, the process to generatepending cart 1006 having item A 1008 and item B 1010 may be completedthrough processes to checkout and purchase the items through electronictransaction processing. However, other user actions and/or input mayalso be used to abandon the process before completing processing ofpending cart 1006. For example, one or more interface options onmerchant A marketplace 1002 may allow a user to remove items frompending cart 1006, close application interface 1000, navigate to anotherinterface or website, and/or navigate to another application oncommunication device 110 a. For example, a remove items option 1012 mayallow a user to remove items from the shopping cart, thereby abandoningelectronic transaction processing for such items.

Similarly, a close window option 1014 may be selected to close out ofapplication interface 1000 prior to completing pending cart 1006 andutilize different functions of communication device 110 a. A user mayalso utilize website navigation field 1016 to type and/or navigate toanother website or webpage of a particular website, or may navigate toanother one of applications 1018, prior to completing pending cart 1006.Thus, the user may provide multiple inputs that may not cause completionof pending cart 1006 and abandon pending cart 1006 so that item A 1008and item B 1010 are not purchased and a transaction is not completed forthose items.

FIG. 2B is an exemplary user interface of a device displaying predictivedata output based on a previously occurring action taken during use ofan application, according to an embodiment. Environment 200 b includesan application interface 1100 output by communication device 110 ahaving the described features, processes, and components discussed inreference to system 100 of FIG. 1. In this regard, a user viewingapplication interface 1100 in environment 200 b may view displayed datafrom processes executed by one or more of the applications discussed inreference to communication device 110 a.

Application interface 1100 of communication device 110 a may displaydata during an executing process of an application, such as applicationoutput data that may be displayed during a session of use of theapplication. For example, application interface 1100 may display anavigation window of a browser application, which may display anaccessed website for a merchant A marketplace 1102. Applicationinterface 1100 may further display a search field 1104 used to browseand/or find items for sale during an online shopping session withmerchant A marketplace 1002. For example, search field 1104 may be usedto add items to a pending cart 1106, which may correspond to a digitalshopping cart used to hold items for purchase as well as performelectronic transaction processing to purchase those items.

In application interface 1100 of environment 200 b, an action, task, oroperation has been requested that causes closure of applicationinterface 1100 or otherwise abandons pending cart 1106 of applicationinterface 1100. For example, in environment 200 b, application interface1100 of communication device 110 a is shown having a close window option1108 as being hovered over for selection through a mouse cursor input1110. This action may correspond to an executable task by the devicedisplaying application interface 1100 that may cause abandonment ofpending cart 1106 so that pending cart 1106 is not completed andprocessed through a transaction to purchase items in pending cart 1106.Other types of input may also cause abandonment, such as navigation toone of application 1120.

In this regard, one or more processes provided by a service providerand/or through an implementable code snippet into the website or otherprocesses for merchant A marketplace 1102 may be used to provide anincentive that may be displayed prior to abandonment or afterabandonment to incentivize the user to complete pending cart 1106. Forexample, prior to completing the task to select close window option 1108using mouse cursor input 1110, notification 1112 may be displayed thatstates, “You are about to abandon this cart!” in message 1114.Notification 1112 may include a save option 1116 to store data forpending cart 1106 so that it may be recalled, processed, and completelater. Moreover, an incentive 1118 may be provided that offers, “Get 10%off if you purchase now.” Thus, using notification 1112, a user mayreceive a benefit or discount to return and complete pending cart 1106instead of abandon pending cart 1106 through mouse cursor input 1110.

FIG. 3 is an exemplary system environment where a communication deviceand a service provider may interact to process user input of deviceapplication usage and actions for predictive data output, according toan embodiment. FIG. 3 includes communication device 110 a andtransaction processor server 130 discussed in reference to system 100 ofFIG. 1.

In environment 300, communication device 110 a executes deviceapplication 112 corresponding generally to the processes and featuresdiscussed in reference to system 100 of FIG. 1. In this regard,communication device 110 a may utilize device application 112 to executeone or more processes, which may include processes with an onlineresource, such as a merchant, to generate a digital shopping cart forpurchase of one or more items. Device application 112 therefore includesan executing process 2000, such as an online shopping session havingitems in a digital shopping cart. Executing process 2000 may bemonitored using abandonment code snippet 2001, which may be implementedin a merchant platform by the merchant using code and/or softwareprovided by service provider server 130. Process data 2002 may thereforeinclude data for the current use of device application 112 including theonline resource, such as input 2004 provided to device application 112,accessed data 2006 from an online resource, and/or processed data 2008between device application 112 and the online resource. Executingprocess 2000 may also be associated with an abandonment action 2010,which may correspond to user input 2012 that causes task 2014 to endexecuting process 2000 prior to completion of executing process 2000,such as a closure of an operation, navigation to another operation, orother task that may end executing process 2000 without completing theprocess, such as purchasing the items in the digital shopping cart. Suchdata may be transmitted to transaction processor server 130 fordetection of abandonment action 2010 and generation of an incentive.However, in other embodiments, the online resource, such as themerchant, may implement code and processes to provide the describedprocesses herein by transaction processor server 130 directly through awebsite or dedicated application of the resource.

In environment 300, transaction processor server 130 executesabandonment detection application 140 corresponding generally to theprocesses and features discussed in reference to system 100 of FIG. 1.In this regard, transaction processor server 130 may utilize abandonmentdetection application 140 to receive abandonment action 2010 duringexecuting process 2000 and utilize stored data to determine whetherabandonment action 2010 indicates abandonment of executing process 2000and what incentive to provide to incentivize completion of executingprocess 2000. Abandonment detection application 140 therefore includesdetected process abandonment 2100 for executing process 2000. Detectedprocess abandonment 2100 may detect executing process 2000 throughabandonment code snippet 2001, which may be similarly implemented in orexecuted by device application 112 through a merchant platform thatutilizes abandonment code snippet 2001. Detected process abandonment2100 may be detected by abandonment code snippet 2001 using process data2002 and abandonment action 2010 with historical usage data 2102 todetermine whether there is a correlation 2104 between abandonment action2010 and past actions causing process abandonment in historical usagedata 2102.

If correlation 2104 indicates that abandonment action 2010 will likelycause abandonment of executing process 2000, abandonment detectionapplication may generate an incentive 2106 for detected processabandonment 2100. Incentive 2106 may be determined based on pastincentives 2108, as well as process specific incentive data 2110, suchas items in a digital shopping cart, merchant specific or item specificdiscounts, and/or incentives specifically tailored to the user, account,or device abandoning executing process 2000 (e.g., based on pastconversions of abandoned process to completion of the process).Abandonment detection application 140 may then generate output 2112,which may include abandonment reversal data 2114 for communicationdevice 110 a.

Communication device 110 a may then receive abandonment reversal data2114 for executing process 2000. Device application 112 may be used tooutput abandonment reversal data 2114 prior to completion of abandonmentaction 2010 and/or after completion of abandonment action 2010.Abandonment reversal data 2114 includes data for incentive 2106, as wellas a redemption process for incentive 2106 that allows deviceapplication 112 to apply incentive 2106 to executing process 2000.Additionally, abandonment reversal data 2114 may include data forabandoned process 2118, such as state data 2120 for executing process2000 that allows recall of executing process 2000. Abandonment reversaldata 2114 may then be output using output data 2122.

FIG. 4 is a flowchart 400 of an exemplary process for monitoring deviceapplication usage for completion of checkout data processing, accordingto an embodiment. Note that one or more steps, processes, and methodsdescribed herein may be omitted, performed in a different sequence, orcombined as desired or appropriate.

At step 402 of flowchart 400, in response to detecting a first actiontaken in an application executing on a device through a platformapplication process executed by a first platform, past application usageassociated with the application is accessed, wherein the pastapplication usage is detected across a plurality of platforms. The firstaction may comprise one of a navigation to another interface or webpagein the application, a first request to quit the application, a secondrequest to close an interface window of the application, or a thirdrequest to remove items from a shopping cart generated using theapplication. Prior to this, a respective instance of a code snippetassociated with the platform application process is implemented in eachof the plurality of platforms including the first platform, whereinexecution of the code snippet by each of the plurality of platformscauses a detection of an abandonment action including the first action.The respective instance of the code snippet may be implemented in eachof the plurality of platforms in response to generating an electroniccheckout process having one or more digital shopping cart interfaces foreach of the plurality of platforms and establishing the electroniccheckout process in a respective website or a respective application ofeach of the plurality of platforms. A past action associated with anaccount utilized with the first platform to perform the first actionduring a previous use session of the application on the device or onanother device may be received, and the past application usage may bedetermined using the past action. The past action may further comprisepast device inputs associated with a past abandonment action from a sameuse or a similar use of an online service and/or service providerproviding the first checkout process.

The application may comprise a first application and the device mayexecute a second application, wherein the first action comprises anavigation from the first application to the second application, andwherein an executable code snippet or package of an online serviceprovided by the first platform from a service provider detects theaction in an online marketplace of a first merchant. The firstapplication may comprise one of a web browser application or a dedicateddevice application, wherein the use of the online service comprises ashopping use of an online marketplace on the first platform thatimplements the executable code snippet or package in the first checkoutprocess to detect the first action through the first application.

The first application may be used to access online marketplace of thefirst platform, wherein the first checkout process may be generatedduring a shopping session on the online marketplace, and wherein thenavigation from the first application to the second applicationcomprises opening a shopping process of a second merchant in the secondapplication. The first action may also comprise a price check or alookup of a same item or a similar item in the second application withanother merchant. In this regard, the platform application process maybe provided by an executable code process in a platform implementedcheckout process that generated data for the first checkout process.This executable code process may be used to monitor the checkout processto detect abandonment, such as when the first action comprises a userinput that navigates a user interface away from the first platform.

The previous use session may comprises a previous checkout process withone of the plurality of platforms, wherein the past action is receivedfrom the one of the plurality of platforms during the previous usesession, and wherein the past action comprises a past digital shoppingcart completion action or a past digital shopping cart abandonmentaction during the previous use session. A transaction to purchase anitem in a digital shopping cart generated during the previous usesession may not have been completed in the previous use session based onthe past action, wherein the determining that the first action indicatesthat the first checkout process will likely be abandoned comprisesdetermining that the first action matches the past action.

The first checkout process may comprise a generation of a digitalshopping cart with an online merchant providing the first platform,wherein the first action causes an abandonment of the digital shoppingcart prior to processing the digital shopping cart. Thus, detecting thefirst action may comprises receiving the first action from the firstplatform through the platform application process, wherein the platformapplication process begins execution on the first platform after thedevice begins the first checkout process with the first platform.Process data for the first checkout process at a time of the abandonmentof the first checkout process may be determined based on the firstaction, and the process data may be stored in at least one of a localdatabase in the non-transitory memory or the first platform

At step 404 of flowchart 400, it is determined that the first actionindicates that a first checkout process within the application will beabandoned. Application data for the application is determined, at step406 of flowchart 400, wherein the application data comprises messagedata associated with the first checkout process and needed to complete asubsequent checkout process. The application data is caused to be outputon the device, wherein the application data displays the message data inan interface element of the device, at step 408 of flowchart 400.Additionally, the process of flowchart 400 may further include receivinga second action in the application from the device and determining thatthe second action requests use of the message data to prevent theabandonment of the first checkout process with the first platform. Inresponse, the application on the device may be redirected to a state ofthe first checkout process prior to the abandonment using the processdata. This may also include communicating a message in the applicationdata with data for a digital shopping cart generated during the firstcheckout process to the first platform.

FIG. 5 is a block diagram of a computer system suitable for implementingone or more components in FIG. 1, according to an embodiment. In variousembodiments, the communication device may comprise a personal computingdevice (e.g., smart phone, a computing tablet, a personal computer,laptop, a wearable computing device such as glasses or a watch,Bluetooth device, key FOB, badge, etc.) capable of communicating withthe network. The service provider may utilize a network computing device(e.g., a network server) capable of communicating with the network. Itshould be appreciated that each of the devices utilized by users andservice providers may be implemented as computer system 500 in a manneras follows.

Computer system 500 includes a bus 502 or other communication mechanismfor communicating information data, signals, and information betweenvarious components of computer system 500. Components include aninput/output (I/O) component 504 that processes a user action, such asselecting keys from a keypad/keyboard, selecting one or more buttons,image, or links, and/or moving one or more images, etc., and sends acorresponding signal to bus 502. I/O component 504 may also include anoutput component, such as a display 511 and a cursor control 513 (suchas a keyboard, keypad, mouse, etc.).

An optional audio input/output component 505 may also be included toallow a user to use voice for inputting information by converting audiosignals. Audio I/O component 505 may allow the user to hear audio. Atransceiver or network interface 506 transmits and receives signalsbetween computer system 500 and other devices, such as anothercommunication device, service device, or a service provider server vianetwork 150. In one embodiment, the transmission is wireless, althoughother transmission mediums and methods may also be suitable. One or moreprocessors 512, which can be a micro-controller, digital signalprocessor (DSP), or other processing component, processes these varioussignals, such as for display on computer system 500 or transmission toother devices via a communication link 518. Processor(s) 512 may alsocontrol transmission of information, such as cookies or IP addresses, toother devices.

Components of computer system 500 also include a system memory component514 (e.g., RAM), a static storage component 516 (e.g., ROM), and/or adisk drive 517. Computer system 500 performs specific operations byprocessor(s) 512 and other components by executing one or more sequencesof instructions contained in system memory component 514. Logic may beencoded in a computer readable medium, which may refer to any mediumthat participates in providing instructions to processor(s) 512 forexecution. Such a medium may take many forms, including but not limitedto, non-volatile media, volatile media, and transmission media. Invarious embodiments, non-volatile media includes optical or magneticdisks, volatile media includes dynamic memory, such as system memorycomponent 514, and transmission media includes coaxial cables, copperwire, and fiber optics, including wires that comprise bus 502. In oneembodiment, the logic is encoded in non-transitory computer readablemedium. In one example, transmission media may take the form of acousticor light waves, such as those generated during radio wave, optical, andinfrared data communications.

Some common forms of computer readable media includes, for example,floppy disk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EEPROM,FLASH-EEPROM, any other memory chip or cartridge, or any other mediumfrom which a computer is adapted to read.

In various embodiments of the present disclosure, execution ofinstruction sequences to practice the present disclosure may beperformed by computer system 500. In various other embodiments of thepresent disclosure, a plurality of computer systems 500 coupled bycommunication link 518 to the network (e.g., such as a LAN, WLAN, PTSN,and/or various other wired or wireless networks, includingtelecommunications, mobile, and cellular phone networks) may performinstruction sequences to practice the present disclosure in coordinationwith one another.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also, where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the scope of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components andvice-versa.

Software, in accordance with the present disclosure, such as programcode and/or data, may be stored on one or more computer readablemediums. It is also contemplated that software identified herein may beimplemented using one or more general purpose or specific purposecomputers and/or computer systems, networked and/or otherwise. Whereapplicable, the ordering of various steps described herein may bechanged, combined into composite steps, and/or separated into sub-stepsto provide features described herein.

The foregoing disclosure is not intended to limit the present disclosureto the precise forms or particular fields of use disclosed. As such, itis contemplated that various alternate embodiments and/or modificationsto the present disclosure, whether explicitly described or impliedherein, are possible in light of the disclosure. Having thus describedembodiments of the present disclosure, persons of ordinary skill in theart will recognize that changes may be made in form and detail withoutdeparting from the scope of the present disclosure. Thus, the presentdisclosure is limited only by the claims.

What is claimed is:
 1. A system of a service provider, the systemcomprising: a non-transitory memory storing instructions; and aprocessor configured to execute the instructions to cause the system to:receive, at the service provider, an indication of an action performedby a user at a user device while an online service is provided by theservice provider in a current session to the user device; access ananalysis of a plurality of prior actions of the user at one or more ofthe user device and other devices in a plurality of prior sessions withat least one of the online service or the service provider; monitor,using an executable code package provided by the service provider andimplemented with the online service, one or more user input actionsassociated with the action with the online service; determine, based onmonitoring the one or more user input actions, a current state of theonline service on the user device; determine, based on the analysis ofthe plurality of prior actions, the action, and the current state of theonline service on the user device, a probability that a transaction ofthe online service will be abandoned at the user device; determinecompletion data that provides application output data at the user deviceto enable completion of the transaction at the user device; and providethe completion data to the user device.
 2. The system of claim 1,wherein the action comprises a navigation from the current sessionaccessible via a first application to a second application, and whereinthe executable code package of the online service detects the actionduring the current session.
 3. The system of claim 2, wherein the firstapplication provides access to an online marketplace of a firstmerchant, wherein the online service comprises a shopping session on theonline marketplace, and wherein the navigation from the firstapplication to the second application comprises opening a shoppingprocess of a second merchant in the second application.
 4. The system ofclaim 1, wherein the action comprises a navigation from a first tab of aweb browser providing access to the current session to a second tab ofthe web browser, and wherein executable code package detects the actionby monitoring the web browser.
 5. The system of claim 1, wherein priorto receiving the indication of the action, executing the instructionsfurther causes the system to: provide, through the online service hostedby the service provider, the online service via an online marketplaceplatform, wherein the transaction comprises a checkout process forgenerating and processing a digital shopping cart, for the user, on theonline marketplace platform, wherein the checkout process causesexecution of executable code package to detect a likelihood ofabandonment of the digital shopping cart by the user.
 6. The system ofclaim 1, wherein the completion data comprises a notification forpresentation on a display of the user device, and wherein thenotification comprises information to the user regarding preventingabandonment of the transaction.
 7. The system of claim 1, wherein thecurrent session comprises a shopping session, provided by the onlineservice, at an online marketplace of a merchant, wherein the transactioncomprises an indication to purchase an item via the shopping session,and wherein the action comprises a price check or a lookup of a sameitem or a similar item, as the item, with another merchant.
 8. A methodcomprising: receiving, at a service provider, an indication of an actionperformed by a user at a user device while an online service is providedby the service provider in a current session to the user device;accessing an analysis of a plurality of prior actions of at least theuser at one or more of the user device and other devices in a pluralityof prior sessions with at least one of the online service or the serviceprovider; monitoring, using a software code snippet provided by theservice provider and implemented with the online service, one or moreuser input actions associated with the action with the online service;determining, based on monitoring the one or more user input actions, acurrent state of the online service on the user device; determining,based on the analysis of the plurality of prior actions, the action, andthe current state of the online service on the user device, that atransaction of the online service will not be completed at the userdevice; determining completion data for use by the online service,wherein the completion data provides application output data to enablecompletion of the transaction; and providing the completion data to theuser device.
 9. The method of claim 8, wherein the action comprises anavigation from the current session accessible via a first applicationto a second application, wherein the software code snippet of the onlineservice detects the action during the current session.
 10. The method ofclaim 9, wherein the first application provides access to an onlinemarketplace of a first merchant, wherein the online service comprises ashopping session on the online marketplace, and wherein the navigationfrom the first application to the second application comprises opening ashopping process of a second merchant in the second application.
 11. Themethod of claim 8, wherein the action comprises a navigation from afirst tab of a web browser providing access to the current session to asecond tab of the web browser, and wherein the software code snippetdetects the action by monitoring the web browser.
 12. The method ofclaim 8, wherein prior to the receiving the indication of the action,the method further comprises: providing, through the online servicehosted by the service provider, the online service via an onlinemarketplace platform, wherein the transaction comprises a checkoutprocess for generating and processing a digital shopping cart, for theuser, on the online marketplace platform, wherein the checkout processcauses execution of the software code snippet to detect a likelihood ofabandonment of the digital shopping cart by the user.
 13. The method ofclaim 12, wherein the completion data comprises a notification forpresentation on a display of the user device, and wherein thenotification comprises information to the user regarding preventingabandonment of the transaction.
 14. The method of claim 8, wherein thecurrent session comprises a shopping session, provided by the onlineservice, at an online marketplace of a merchant, wherein the transactioncomprises an indication to purchase an item via the shopping session,and wherein the action comprises a price check or a lookup of a sameitem or a similar item, as the item, with another merchant.
 15. Anon-transitory machine-readable medium having stored thereonmachine-readable instructions executable to cause a machine to performoperations comprising: receiving, at a service provider, an indicationof an action performed by a user at a user device while an onlineservice is provided by the service provider in a current session to theuser device; accessing an analysis of a plurality of prior actions ofthe user at one or more of the user device and other devices in aplurality of prior sessions with at least one of the online service orthe service provider; monitoring, using a software process provided by asoftware development kit (SDK) of the service provider and implementedwith the online service, one or more user input actions associated withthe action with the online service; determining, based on monitoring theone or more user input actions, a current state of the online service onthe user device; determining, based on the analysis of the plurality ofprior actions, the action, and the current state of the online serviceon the user device, a probability that a transaction of the onlineservice will be abandoned at the user device; determining completiondata that provides application output data at the user device to enablecompletion of the transaction at the user device; and providing thecompletion data to the user device.
 16. The non-transitorymachine-readable medium of claim 15, wherein the action comprises anavigation from the current session accessible via a first applicationto a second application, wherein the software process provided by theSDK and implemented with the online service detects the action duringthe current session.
 17. The non-transitory machine-readable medium ofclaim 16, wherein the first application provides access to an onlinemarketplace of a first merchant, wherein the online service comprises ashopping session on the online marketplace, and wherein the actioncomprises a navigation from the first application to a secondapplication, the navigation comprising opening a shopping process of asecond merchant in the second application.
 18. The non-transitorymachine-readable medium of claim 15, wherein the action comprises anavigation from a first tab of a web browser providing access to thecurrent session to a second tab of the web browser, and wherein thesoftware process provided by the SDK detects the action by monitoringthe web browser.
 19. The non-transitory machine-readable medium of claim18, wherein the completion data comprises a notification forpresentation on a display of the user device, and wherein thenotification comprises information to the user regarding preventingabandonment of the transaction.
 20. The non-transitory machine-readablemedium of claim 15, wherein the operations further comprise: providing,through the online service hosted by the service provider, the onlineservice via an online marketplace platform, wherein the transactioncomprises a checkout process for generating and processing a digitalshopping cart, for the user, on the online marketplace platform, whereinthe checkout process causes execution of the software process providedby the SDK to detect a likelihood of abandonment of the digital shoppingcart by the user.